home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 3 / Gold Medal Software - Volume 3 (Gold Medal) (1994).iso / windows / editprog / newvisda.arj / FILTER.FRM < prev    next >
Text File  |  1994-04-01  |  6KB  |  227 lines

  1. VERSION 2.00
  2. Begin Form fFilter 
  3.    BackColor       =   &H00C0C0C0&
  4.    BorderStyle     =   1  'Fixed Single
  5.    Caption         =   "Filter"
  6.    ClientHeight    =   2370
  7.    ClientLeft      =   3390
  8.    ClientTop       =   3675
  9.    ClientWidth     =   5070
  10.    ControlBox      =   0   'False
  11.    Height          =   2835
  12.    Left            =   3300
  13.    LinkTopic       =   "Form1"
  14.    MaxButton       =   0   'False
  15.    MinButton       =   0   'False
  16.    ScaleHeight     =   2412
  17.    ScaleMode       =   0  'User
  18.    ScaleWidth      =   5160
  19.    Top             =   3300
  20.    Width           =   5250
  21.    Begin ListBox cFieldList 
  22.       BackColor       =   &H00FFFFFF&
  23.       Height          =   1395
  24.       Left            =   240
  25.       TabIndex        =   2
  26.       Tag             =   " OL"
  27.       Top             =   360
  28.       Width           =   1695
  29.    End
  30.    Begin ListBox cOpsList 
  31.       BackColor       =   &H00FFFFFF&
  32.       Height          =   1395
  33.       Left            =   2040
  34.       TabIndex        =   7
  35.       Tag             =   " OL"
  36.       Top             =   360
  37.       Width           =   960
  38.    End
  39.    Begin TextBox cExpr 
  40.       BackColor       =   &H00FFFFFF&
  41.       Height          =   287
  42.       Left            =   3120
  43.       TabIndex        =   1
  44.       Tag             =   " OL"
  45.       Top             =   360
  46.       Width           =   1811
  47.    End
  48.    Begin CommandButton OkayButton 
  49.       Caption         =   "&OK"
  50.       Default         =   -1  'True
  51.       Enabled         =   0   'False
  52.       Height          =   372
  53.       Left            =   600
  54.       TabIndex        =   4
  55.       Top             =   1919
  56.       Width           =   1691
  57.    End
  58.    Begin CommandButton CancelButton 
  59.       Cancel          =   -1  'True
  60.       Caption         =   "&Cancel"
  61.       Height          =   372
  62.       Left            =   2879
  63.       TabIndex        =   5
  64.       Top             =   1919
  65.       Width           =   1691
  66.    End
  67.    Begin Label Label1 
  68.       Alignment       =   2  'Center
  69.       AutoSize        =   -1  'True
  70.       BackColor       =   &H00C0C0C0&
  71.       Caption         =   "Do not use quotes"
  72.       Height          =   195
  73.       Left            =   3195
  74.       TabIndex        =   8
  75.       Top             =   720
  76.       Width           =   1605
  77.    End
  78.    Begin Label OpsLabel 
  79.       BackColor       =   &H00C0C0C0&
  80.       Caption         =   "Operators:"
  81.       Height          =   192
  82.       Left            =   2039
  83.       TabIndex        =   6
  84.       Top             =   120
  85.       Width           =   971
  86.    End
  87.    Begin Label FieldListLabel 
  88.       BackColor       =   &H00C0C0C0&
  89.       Caption         =   "Fields:"
  90.       Height          =   192
  91.       Left            =   240
  92.       TabIndex        =   3
  93.       Top             =   120
  94.       Width           =   1092
  95.    End
  96.    Begin Label ExprLabel 
  97.       BackColor       =   &H00C0C0C0&
  98.       Caption         =   "Value or Expression:"
  99.       Height          =   192
  100.       Left            =   3120
  101.       TabIndex        =   0
  102.       Top             =   120
  103.       Width           =   1811
  104.    End
  105. End
  106. Option Explicit
  107. Dim FNotFound As Integer
  108.  
  109. Sub CancelButton_Click ()
  110.   Hide
  111.   'set the flag for the dynaset/dynagrid form
  112.   gfFindFailed = True
  113. End Sub
  114.  
  115. Sub cExpr_Change ()
  116.   If cFieldList <> "" And cOpsList <> "" And cExpr <> "" Then
  117.     OkayButton.Enabled = True
  118.   Else
  119.     OkayButton.Enabled = False
  120.   End If
  121. End Sub
  122.  
  123. Sub cExpr_KeyPress (keyascii As Integer)
  124. If keyascii = 34 Or keyascii = 39 Then
  125. keyascii = 0
  126. End If
  127.  
  128.  
  129.  
  130. End Sub
  131.  
  132. Sub cFieldList_Click ()
  133.   If cFieldList <> "" And cOpsList <> "" And cExpr <> "" Then
  134.     OkayButton.Enabled = True
  135.   Else
  136.     OkayButton.Enabled = False
  137.   End If
  138. End Sub
  139.  
  140. Sub cOpsList_Click ()
  141.   If cFieldList <> "" And cOpsList <> "" And cExpr <> "" Then
  142.     OkayButton.Enabled = True
  143.   Else
  144.     OkayButton.Enabled = False
  145.   End If
  146. End Sub
  147.  
  148. Sub Form_Load ()
  149.   FNotFound = False
  150.   cOpsList.AddItem "="
  151.   cOpsList.AddItem "<>"
  152.   cOpsList.AddItem ">="
  153.   cOpsList.AddItem "<="
  154.   cOpsList.AddItem ">"
  155.   cOpsList.AddItem "<"
  156.   cOpsList.AddItem "Like"
  157. End Sub
  158.  
  159. Sub Form_Paint ()
  160.   Outlines Me
  161. End Sub
  162.  
  163. Sub OkayButton_Click ()
  164.    Dim i As Integer
  165.    Dim isit As Variant
  166.    
  167.    On Error GoTo FindErr
  168.  
  169.    
  170.    FNotFound = False
  171.    SetHourGlass Me
  172.  
  173.    gstFindField = cFieldList
  174.    gstFindExpr = cExpr
  175.    gstFindOp = cOpsList
  176.    
  177.    isit = cExpr
  178.     'see if it's a date field
  179.         If IsDate(isit) Then
  180.         i = InStr(1, gstFindField, " ")
  181.            If i > 0 Then
  182.             FilterStr = "[" + gstFindField + "]" + " " + gstFindOp + " " + "#" + gstFindExpr + "#"
  183.            Else
  184.             FilterStr = gstFindField + " " + gstFindOp + " " + "#" + gstFindExpr + "#"
  185.            End If
  186.         Hide
  187.         GoTo Findend
  188.         'Stop'
  189.         End If
  190.  
  191.  
  192.    If IsNumeric(isit) Then
  193.    ' pass it, it's a number but put quotes around field name
  194.         i = InStr(1, gstFindField, " ")
  195.            If i > 0 Then
  196.             FilterStr = "[" + gstFindField + "]" + " " + gstFindOp + " " + gstFindExpr
  197.            Else
  198.             FilterStr = gstFindField + " " + gstFindOp + " " + gstFindExpr
  199.            End If
  200.    Else
  201.    ' put quotes around expression if a space is in it
  202.         i = InStr(1, gstFindField, " ")
  203.            If i > 0 Then
  204.             FilterStr = "[" + gstFindField + "]" + " " + gstFindOp + " " + Chr(34) + gstFindExpr + Chr(34)
  205.            Else
  206.             FilterStr = gstFindField + " " + gstFindOp + " " + Chr(34) + gstFindExpr + Chr(34)
  207.            End If
  208.   End If
  209.  
  210.    Hide
  211.    GoTo Findend
  212.  
  213. FindErr:
  214.    If Err <> EOF_ERR Then
  215.      ShowError
  216.      Resume Findend
  217.    Else
  218.      FNotFound = True
  219.      Resume Next
  220.    End If
  221.  
  222. Findend:
  223.    ResetMouse Me
  224.  
  225. End Sub
  226.  
  227.